package com.moyoutian.line.queue;

/**
 * 队列接口
 */
public interface Queue<D> {


    /**
     * @return 返回队列大小
     */
    int getSize();

    /**
     * @return 返回队列最多存储的长度
     */
    int getMaxSize();

    /**
     * 向对列中添加数据
     *
     * @param d 添加的数据
     */
    void add(D d);

    /**
     * 获取并移除队列头元素
     */
    D getAndRemove();

    /**
     * 获取队列头元素
     */
    D getHeader();

}
